﻿//using Common; 
//using System;
//using System.Collections.Generic;
//using System.IO;
//using System.Linq;
//using System.Net;
//using System.Text;
//using System.Threading;
//using System.Web;
//using System.Xml;

//namespace YiCai.PayService
//{
//    public class YCHttpHelper
//    {
//        public string cookie = "";
//        public string validCode = "";
//        public string validCodePath = AppDomain.CurrentDomain.BaseDirectory + "\\img\\validCode.jfif";
//        string logurl = AppDomain.CurrentDomain.BaseDirectory + "\\logs\\充值日志.txt";
         
//        public string PostAddMoney(string userName, decimal Amount)
//        {
//            string resultStr = "";
//            string QueryUserUrl = "http://www.68320001.com/cash/man/manOnlineDeposit/queryAccountByName?accountName=" + userName;
//            string UserStr = CallHtml(QueryUserUrl);
//            File.AppendAllText(logurl, string.Format("\r\n{0} {1} ", DateTime.Now, " 用户‘" + userName + "’充值：金额=" + Amount));
//            var t_user = JObject.Parse(UserStr);
//            if (t_user["error"] != null)
//            {
//                System.IO.File.AppendAllText(logurl, "状态：" + t_user["error"].ToString() + " 可能cookie已过期，或被登陆覆盖，或对方服务器重启清空cookie。");
//                return t_user["error"].ToString();
//            }
//            if (t_user["data"].Count() == 0)
//            {
//                string[] str = new string[] { "状态：账户不存在" };
//                System.IO.File.AppendAllText(logurl, str[0]);
//                return "账户不存在";
//            }
//            string PostMoneyUrl = "http://www.68320001.com/cash/man/manOnlineDeposit/insert";
//            StringBuilder sb = new StringBuilder();
//            decimal AuditAmount = Convert.ToDecimal((Amount / 3).ToString("F2"));//打码量
//            sb.Append("?accountId=" + t_user["data"]["accountId"]);
//            sb.Append("&depositModelId=" + t_user["data"]["depositModelId"]);
//            sb.Append("&accountName=" + t_user["data"]["accountName"]);
//            sb.Append("&depositType=" + 1);
//            sb.Append("&depositAmount=" + Amount);
//            sb.Append("&depositPreferenceAmount=" + 0);
//            sb.Append("&otherPreferenceAmount=" + 0);
//            sb.Append("&synthesizeAuditAmount=" + AuditAmount);
//            sb.Append("&normalityAuditCheck=" + 1);
//            sb.Append("&highestDeposit=" + 9999999);//最高充值
//            sb.Append("&highestDeposit=" + 10); //最低充值
//            resultStr = CallHtml(PostMoneyUrl + sb);
//            var t_result = JObject.Parse(resultStr);
//            if (t_result["status"].ToString() != "success")
//            {
//                string[] str = new string[] { "状态：" + t_result["errMsg"].ToString() };
//                System.IO.File.AppendAllText(logurl, str[0]);
//                return t_result["errMsg"].ToString();
//            }
//            return "";
//        }
//        /// <summary> 
//        ///  获取网址HTML 
//        /// </summary> 
//        /// <param name="URL">网址 </param> 
//        /// <returns> </returns> 
//        public string CallHtml(string URL)
//        {
//            HttpWebRequest request = HttpWebRequest.Create(URL) as HttpWebRequest;
//            request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0";
//            request.Method = "POST";
//            request.Headers.Add("Cookie", new AppConfig().GetRemoteCookie());
//            request.Credentials = CredentialCache.DefaultCredentials;
//            //转换输入参数的编码类型，获取bytep[]数组 
//            WebResponse response;
//            response = request.GetResponse();
//            string reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8).ReadToEnd();
//            try
//            {
//                request.GetResponse().Close();
//            }
//            catch (WebException ex)
//            {
//                throw ex;
//            }
//            //return reader;
//            var t_obj = JObject.Parse(reader);
//            if (t_obj["error"] != null)
//            {
//                if (t_obj["error"].Contains("验证码"))
//                {
//                    //用打码刷新cookie
//                    RefreshCookie();
//                }
//            }
//            return reader;
//        }
//        /// <summary>
//        /// 登录cookie失效后 重新通过打码平台登录刷新cookie
//        /// </summary>
//        /// <returns></returns>
//        public string RefreshCookie()
//        {
//            string logPath = AppDomain.CurrentDomain.BaseDirectory + "logs\\ServiceConfig.txt";
//            GetCookie();
//            GetValidCode();
//            HttpLogin();
//            StringHelper.EditTxt(logPath, 0, cookie);//更新最新的cookie
//            File.AppendAllText(logurl, string.Format("\r\n{0} {1} ", DateTime.Now, "登录cookie刷新成功。"));
//            return cookie;
//        }

//        /// <summary>
//        /// 下载验证码、获取Cookie
//        /// </summary>
//        /// <returns></returns>
//        public string GetCookie()
//        {
//            HttpWebRequest request = HttpWebRequest.Create("http://www.68320001.com/validCode?simple=true") as HttpWebRequest;
//            request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0";
//            request.Method = "Get";
//            //request.Headers.Add("Cookie", "SHAREJSESSIONID=47a8df42-992e-471c-9db1-00437be88281");
//            request.Credentials = CredentialCache.DefaultCredentials;
//            //转换输入参数的编码类型，获取bytep[]数组 
//            WebResponse response = request.GetResponse();

//            Stream sream = response.GetResponseStream();
//            List<byte> list = new List<byte>();
//            while (true)
//            {
//                int data = sream.ReadByte();
//                if (data == -1)
//                    break;
//                list.Add((byte)data);
//            }
//            //先删除以前的验证码图，再添加
//            DeleteFile(validCodePath);
//            File.WriteAllBytes(AppDomain.CurrentDomain.BaseDirectory + "\\img\\validCode.jfif", list.ToArray());
//            WebHeaderCollection responseHeaders = response.Headers;
//            cookie = responseHeaders["Set-Cookie"].Split(';')[0];
//            try
//            {
//                request.GetResponse().Close();
//            }
//            catch (WebException ex)
//            {
//                throw ex;
//            }
//            return cookie;
//        }
//        /// <summary>
//        /// 获取验证码值
//        /// </summary>
//        /// <returns></returns>
//        public string GetValidCode()
//        {
//            string urlPath = validCodePath;
//            byte[] data = File.ReadAllBytes(urlPath);//获取图像文件二进制数据 
//            //必要的参数
//            var param = new Dictionary<object, object>
//                        {
//                            {"username","zs45200zs"},
//                            {"password","45454545"},
//                            {"typeid","2040"},
//                            {"timeout","90"},
//                            {"softid","111943"},
//                            {"softkey","7927212905624de88c03bd5a6588ecc0"}
//                        };

//            //提交服务器
//            string httpResult = RuoKuaiHttp.Post("http://api.ruokuai.com/create.xml", param, data);
//            //XML解析

//            XmlDocument xmlDoc = new XmlDocument();
//            try
//            {
//                xmlDoc.LoadXml(httpResult);
//            }
//            catch
//            {
//                //"返回格式有误\r\n";
//            }
//            XmlNode idNode = xmlDoc.SelectSingleNode("Root/Id");
//            XmlNode resultNode = xmlDoc.SelectSingleNode("Root/Result");
//            XmlNode errorNode = xmlDoc.SelectSingleNode("Root/Error");
//            string result = string.Empty;
//            string topidid = string.Empty;
//            if (resultNode != null && idNode != null)
//            {
//                topidid = idNode.InnerText;
//                result = resultNode.InnerText;//识别成功
//                validCode = result;
//                return result;
//            }
//            else if (errorNode != null)
//            {
//                return "识别错误：";
//            }
//            else
//            {
//                return "未知问题\r\n";
//            }
//        }

//        /// <summary>
//        /// 有了验证码后直接登录
//        /// </summary>
//        public void HttpLogin()
//        {
//            if (cookie == "") return;
//            string loginUrl = "http://www.68320001.com/login?username=xiaoke&password=qwe123&securityCode=" + validCode;
//            HttpWebRequest request = HttpWebRequest.Create(loginUrl) as HttpWebRequest;
//            request.UserAgent = "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/58.0.3029.110 Safari/537.36 SE 2.X MetaSr 1.0";
//            request.Method = "Post";
//            request.Headers.Add("Cookie", cookie);
//            request.Credentials = CredentialCache.DefaultCredentials;
//            //转换输入参数的编码类型，获取bytep[]数组 
//            WebResponse responseLogin;
//            responseLogin = request.GetResponse();
//            string reader = new StreamReader(responseLogin.GetResponseStream(), Encoding.UTF8).ReadToEnd();
//            try
//            {
//                request.GetResponse().Close();
//            }
//            catch (WebException ex)
//            {
//                throw ex;
//            }
//        }

//        /// <summary>
//        /// 根据路径删除文件
//        /// </summary>
//        /// <param name="path"></param>
//        public void DeleteFile(string path)
//        {
//            if (File.Exists(path))
//            {
//                FileAttributes attr = File.GetAttributes(path);
//                if (attr == FileAttributes.Directory)
//                {
//                    Directory.Delete(path, true);
//                }
//                else
//                {
//                    File.Delete(path);
//                }
//            }
//        }
//    }
//}